package com.leo.util.mybatis;

import com.leo.common.IEnumerationType;

/**
 * mybatis使用枚举工具类
 *
 * @author liusl
 * @date 2019/1/24-13:04
 */
public class CodeEnumUtil {
    /**
     * mybatis GetTheEnumerationTypeInterface
     *
     * @param enumClass 枚举类型
     * @param code code
     * @param <E> E
     * @return E
     */
    public static <E extends Enum<?> & IEnumerationType> E codeOf(Class<E> enumClass, int code) {
        E[] enumConstants = enumClass.getEnumConstants();
        for (E e : enumConstants) {
            if (e.getCode() == code) {
                return e;
            }
        }
        return null;
    }
}
